home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 25 / Cream of the Crop 25.iso / os2 / gnuwget.zip / wget-1.4.3 / mkinstalldirs.cmd < prev    next >
OS/2 REXX Batch file  |  1996-11-09  |  1KB  |  55 lines

  1. /* OS/2 REXX SCRIPT */
  2. /* $XFree86: xc/config/util/mkdirhier.cmd,v 3.2 1996/02/19 12:16:51 dawes Exp $ */
  3.  
  4. CALL RxFuncAdd 'SysMkDir', 'RexxUtil', 'SysMkDir'
  5.  
  6. IF ARG() = 0 THEN DO
  7.     SAY "mkdirhier: usage: mkdirhier directory ..."
  8.     EXIT 1
  9. END
  10.  
  11. curdir=DIRECTORY()
  12. drive=DELSTR(curdir,3)
  13.  
  14. status=""
  15. PARSE ARG all
  16.  
  17. DO i=1 TO WORDS(all)
  18.     direc = TRANSLATE(WORD(all,i),'/','\')
  19.     SELECT
  20.     WHEN direc = "" THEN DO
  21.         SAY "mkdirhier: empty directory name"
  22.         status=1
  23.         ITERATE
  24.         END
  25.     WHEN POS('0a'x,direc) > 0 THEN DO
  26.         SAY "mkdirhier: directory name contains a newline: '" direc "'"
  27.         status=1
  28.         ITERATE
  29.         END
  30.     OTHERWISE NOP
  31.     END
  32.     IF POS(":",direc) = 0 THEN direc = INSERT(drive,direc)
  33.  
  34.     dirbuf.0 = direc
  35.     DO k=1 TO 1000
  36.         direc1 = STRIP(direc,"t","/")
  37.         dpath1 = FILESPEC("path",direc1)
  38.         dirbuf.k=FILESPEC("drive",direc1)||STRIP(dpath1,"t","/")
  39.         IF POS("/",dirbuf.k) = 0 THEN LEAVE k
  40.         direc=dirbuf.k
  41.     END
  42.     DO m=k-1 TO 0 BY -1
  43.         dospath = TRANSLATE(dirbuf.m,'\','/')
  44.         targetdir=DIRECTORY(dospath)
  45.         IF targetdir = dospath THEN
  46.             NOP
  47.         ELSE
  48.             CALL SysMkDir(dospath)
  49.         CALL DIRECTORY curdir
  50.     END
  51. END
  52.  
  53.  
  54. EXIT status
  55.